What Programmers Know About Debugging And How They Use Their IDE Debuggers
نویسندگان
چکیده
As new bugs are discovered continuously, software developers often face the task of locating and fixing the defect causing the failure, called debugging. Based on the absence of behavioral studies on this subject in literature, this study aims to get more insights into how developers think of debugging and how they debug in their IDE. To this end, after searching for common issues with debugging on StackOverflow, we conducted an online survey on developers’ perception on debugging. In addition, we developed a plugin to instrument Eclipse and IntelliJ in order to look for common debugging behavior. Amongst others, we found that while the vast majority of survey respondents claims to be using the IDE debugger, most plugin users actually do not use it. Furthermore, we found that the amount of testing performed or programming experience has limited to no impact on the time spent debugging. In general, the results give a strong indication that we need to review some commonly accepted beliefs on debugging. Thesis Committee: Chair: Dr. A.E. Zaidman, Faculty EEMCS, TU Delft University supervisor: M.M. Beller, Faculty EEMCS, TU Delft Committee Member: Dr. C. Hauff, Faculty EEMCS, TU Delft Committee Member: Dr. M.B. van Riemsdijk, Faculty EEMCS, TU Delft
منابع مشابه
On the Dichotomy of Debugging Behavior Among Programmers
Debugging is an inevitable activity in most software projects, often difficult and more time-consuming than expected, giving it the nickname the “dirty little secret of computer science.” Surprisingly, we have little knowledge on how software engineers debug software problems in the real world, whether they use dedicated debugging tools, and how knowledgeable they are about debugging. This stud...
متن کاملThe Intelligent C Language Debugger
Most current programming debuggers do not have any built-in intelligence to help programmers perform debugging. When using these non-intelligent debuggers, programmers have to debug their programs statement by statement in order to track down the bugs. There are several disadvantages with the current non-intelligent debuggers. The first disadvantage is that the debugger does not know the variab...
متن کاملDUEL - A Very High-Level Debugging Language
Most source-level debuggers accept expressions in the source language, e.g., C, and can print sourcelanguage values. This approach is usually justi ed on grounds that programmers need to know only one language. But the evaluation of source-language expressions or even statements is poorly suited for making non-trivial queries about the program state, e.g., \which elements of array x[100] are po...
متن کاملCMU-CS-85-174 Adaptability and Portability of Symbolic Debuggers
The design and implementation of symbolic debuggers for complex software systems is not a well understood area. This is reflected in the inadequate functionality of existing debuggers, many of which are seldomly used. For example, 30% of all programmers asked in a questionnaire (which was distributed as part of this thesis work) do not use a debugger at all or only very in frequently [Bruegge, ...
متن کاملAn Insight View of Kernel Visual Debugger in System Boot up
For many years, developers could not figure out the mystery of OS kernels. The main source of this mystery is the interaction between operating systems and hardware while system’s boot up and kernel initialization. In addition, many operating system kernels differ in their behavior toward many situations. For instance, kernels act differently in racing conditions, kernel initialization and proc...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2016